﻿using CoreShop.Library;
using System;
using System.ComponentModel;

namespace CoreShop.PrintService
{    
    public class MenuObject
    {
        #region 表头数据=
        /// <summary>
        /// 订单号
        /// </summary>
        [DisplayName("订单号")]
        [Custom("订单号", 0)]
        public string OrderID { get; set; } = "";

        /// <summary>
        /// 就餐人数
        /// </summary>
        [DisplayName("就餐人数")]
        [Custom("就餐人数", 0)]
        public string Person { get; set; } = "";

        /// <summary>
        /// 桌台号
        /// </summary>
        [DisplayName("桌台号")]
        [Custom("桌台号", 0)]
        public string TableID { get; set; } = "";

        /// <summary>
        /// 下单员
        /// </summary>
        [DisplayName("下单员")]
        [Custom("下单员", 1)]
        public string Operator { get; set; } = "";

        /// <summary>
        /// 合计数量
        /// </summary>
        [DisplayName("合计数量")]
        [Custom("合计数量", 0)]
        public string SumQuantity { get; set; } = "";


        /// <summary>
        /// 合计原价金额
        /// </summary>
        [DisplayName("合计原价金额")]
        [Custom("合计原价金额", 0)]
        public string SumAmount { get; set; } = "";

        /// <summary>
        /// 合计实价金额
        /// </summary>
        [DisplayName("合计实价金额")]
        [Custom("合计实价金额", 0)]
        public string SumRealAmount { get; set; } = "";

        /// <summary>
        /// 合计做法金额
        /// </summary>
        [DisplayName("合计做法金额")]
        [Custom("合计做法金额", 0)]
        public string SumTaskAmount { get; set; } = "";

        /// <summary>
        /// 合计加料金额
        /// </summary>
        [DisplayName("合计加料金额")]
        [Custom("合计加料金额", 0)]
        public string SumFeedAmount { get; set; } = "";

        /// <summary>
        /// 合计优惠金额
        /// </summary>
        [DisplayName("合计优惠金额")]
        [Custom("合计优惠金额", 1)]
        public string SumDisAmount { get; set; } = "";

        /// <summary>
        /// 合计实收金额
        /// </summary>
        [DisplayName("合计实收金额")]
        [Custom("合计实收金额", 0)]
        public string SumAllAmount { get; set; } = "";


        /// <summary>
        /// 下单时间
        /// </summary>
        [DisplayName("下单时间")]
        [Custom("下单时间", 0)]
        public string CreateTime { get; set; } = "";

        /// <summary>
        /// 打印时间
        /// </summary>
        [DisplayName("打印时间")]
        [Custom("打印时间", 0)]
        public string DateTime { get; set; } = "";

        /// <summary>
        /// 会员姓名
        /// </summary>
        [DisplayName("会员姓名")]
        [Custom("会员姓名", 1)]
        public string MemberName { get; set; } = "";

        /// <summary>
        /// 会员电话
        /// </summary>
        [DisplayName("会员电话")]
        [Custom("会员电话", 1)]
        public string MemberPhone { get; set; } = "";

        /// <summary>
        /// 送餐地址
        /// </summary>
        [DisplayName("送餐地址")]
        [Custom("送餐地址", 1)]
        public string Address { get; set; } = "";

        /// <summary>
        /// 整单备注
        /// </summary>
        [DisplayName("整单备注")]
        [Custom("整单备注", 1)]
        public string OrderRemark { get; set; } = "";

        /// <summary>
        /// 小票标题
        /// </summary>
        [DisplayName("小票标题")]
        [Custom("小票标题", 1)]
        public string BillTitle { get; set; } = "";

        #endregion

        #region 明细数据
        /// <summary>
        /// 序号
        /// </summary>
        [DisplayName("序号")]
        [Custom("序号", 0)]
        public string Number { get; set; } = "";

        /// <summary>
        /// 商品编码
        /// </summary>
        [DisplayName("商品编码")]
        [Custom("商品编码", 0)]
        public string FoodNumber { get; set; } = "";

        /// <summary>
        /// DisplayName可以用GetModelDisplayName取
        /// Custom(名称，类型)类型（0通用，1结帐单)
        /// </summary>
        [DisplayName("商品名称")]
        [Custom("商品名称", 0)]
        public string FoodName { get; set; } = "";

        /// <summary>
        /// 商品规格
        /// </summary>
        [DisplayName("商品规格")]
        [Custom("商品规格", 0)]
        public string specName { get; set; } = "";

        /// <summary>
        /// 商品数量
        /// </summary>
        [DisplayName("商品数量")]
        [Custom("商品数量", 0)]
        public string FQuantity { get; set; } = "";

        /// <summary>
        /// 商品原价
        /// </summary>
        [DisplayName("商品原价")]
        [Custom("商品原价", 0)]
        public string Price { get; set; } = "";

        /// <summary>
        /// 商品实价
        /// </summary>
        [DisplayName("商品实价")]
        [Custom("商品实价", 0)]
        public string RealPrice { get; set; } = "";

        /// <summary>
        /// 商品原价金额
        /// </summary>
        [DisplayName("商品原价金额")]
        [Custom("商品原价金额", 0)]
        public string Amount { get; set; } = "";

        /// <summary>
        /// 商品实价金额
        /// </summary>
        [DisplayName("商品实价金额")]
        [Custom("商品实价金额", 0)]
        public string RealAmount { get; set; } = "";

        /// <summary>
        /// 做法金额
        /// </summary>
        [DisplayName("做法金额")]
        [Custom("做法金额", 0)]
        public string TaskAmount { get; set; } = "";

        /// <summary>
        /// 加料金额
        /// </summary>
        [DisplayName("加料金额")]
        [Custom("加料金额", 0)]
        public string FeedAmount { get; set; } = "";

        /// <summary>
        /// 优惠金额
        /// </summary>
        [DisplayName("优惠金额")]
        [Custom("优惠金额", 1)]
        public string DisAmount { get; set; } = "";

        /// <summary>
        /// 商品金额小计
        /// </summary>
        [DisplayName("商品金额小计")]
        [Custom("商品金额小计", 0)]
        public string AllAmount { get; set; } = "";

        /// <summary>
        /// 做法
        /// </summary>
        [DisplayName("做法")]
        [Custom("做法", 0)]
        public string TaskName { get; set; } = "";

        /// <summary>
        /// 加料
        /// </summary>
        [DisplayName("加料")]
        [Custom("加料", 0)]
        public string FeedName { get; set; } = "";

        /// <summary>
        /// 商品备注
        /// </summary>
        [DisplayName("商品备注")]
        [Custom("商品备注", 0)]
        public string Remark { get; set; } = "";

        /// <summary>
        /// 打包
        /// </summary>
        [DisplayName("打包")]
        [Custom("打包", 0)]
        public string Parcel { get; set; } = "";

        /// <summary>
        /// 叫起
        /// </summary>
        [DisplayName("叫起")]
        [Custom("叫起", 0)]
        public string CallType { get; set; } = "";

        /// <summary>
        /// 退菜标记
        /// </summary>
        [DisplayName("退菜标记")]
        [Custom("退菜标记", 0)]
        public string RefundSign { get; set; } = "*退*";

        /// <summary>
        /// 套菜名称
        /// </summary>
        [DisplayName("套菜名称")]
        [Custom("套菜名称", 0)]
        public string foodPackName { get; set; } = "";
        #endregion
    }
}
